package ControleurBelote;

import java.util.LinkedList;

public class Joueur {
	
	private TasDeCarte main;
	private String pseudo;
	private int pliPoint;
	private LinkedList<Carte> pliCarte;
	private int nombreCarteMain;
	private String identEquipe;
	
	public Joueur (){pseudo = "";}
	
	public Joueur (String nom,String equipe){
		pseudo = nom;
		main = new TasDeCarte(8);
		setPliPoint(0);
		nombreCarteMain = 0;
		setPliCarte(new LinkedList<Carte>());
		setIdentEquipe(equipe);
		
	}

	
	public void ajouterUneCarte(Carte carte){
		main.ajouterUneCarte(carte);
		carte.setJoueur(this);
	}
	
	public void ajouterPlusieurCarte(LinkedList<Carte> carte){
		main.ajouterPlusieursCarte(carte);
		int i =0;
		for(i = 0;i<carte.size();i++){
			carte.get(i).setJoueur(this);
		}
	}
	
	public void enleverUneCarte(Carte carte){
		main.enleverUneCarte(carte);
	}
	
	public Carte obtenirUneCarte(int num){
		return main.obtenirCarte(num);
	}
	
	public void affecterAtout(String couleur){
		main.couleurDevientAtout(couleur);
	}
	
	public LinkedList<Carte> viderPli(){
		LinkedList<Carte> pli = pliCarte;
		pliCarte.clear();
		return pli;
	}
	
	
	public LinkedList<Carte> getPliCarte() {return pliCarte;}
	public int getPliPoint() {return pliPoint;}
	public int getNbMain(){return nombreCarteMain;}
	public LinkedList<Carte> getMain(){return main.getTas();}
	public String getIdentEquipe() {return identEquipe;}

	public void setNombreCarteMain(int i){nombreCarteMain += i;}
	public void setPliCarte(LinkedList<Carte> pliCarte)
	{this.pliCarte.addAll(pliCarte);}
	public void setPliPoint(int point){pliPoint = point;}
	public void setIdentEquipe(String identEquipe) 
	{this.identEquipe = identEquipe;}

	public String toString(){
		String chaine = "";
		chaine = pseudo + " a les cartes suivantes en main :\n "
		+ main.toString();
		return chaine;
	}


	public boolean equals(Object o){
		return ((Joueur)o).main.equals(main);
	}

	
		

}
